package com.tennis.tennisreservation.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * 微信支付配置类，用于加载application.yml中的微信支付配置
 */
@Data
@Configuration
@ConfigurationProperties(prefix = "wechat")
public class WxPayConfig {

    /**
     * 微信小程序 AppID
     */
    private String appid;

    /**
     * 微信小程序密钥
     */
    private String secret;

    /**
     * 支付相关配置
     */
    private Pay pay = new Pay();

    @Data
    public static class Pay {
        /**
         * 商户号
         */
        private String mchId;

        /**
         * 商户证书序列号
         */
        private String mchSerialNo;

        /**
         * 商户私钥路径
         */
        private String privateKeyPath;

        /**
         * APIv3 密钥
         */
        private String apiV3Key;

        /**
         * 微信平台公钥证书路径
         */
        private String wechatpayCertPath;

        /**
         * 支付通知回调地址
         */
        private String notifyUrl;
    }
}
